import * as vscode from 'vscode'

/**
 * 自动保存指定文件路径的文件
 * @param filePath 文件路径
 */
export async function autoSaveFile(filePath: string): Promise<void> {
  try {
    // 直接查找并保存文件，不做智能检测
    const openedDocument = vscode.workspace.textDocuments.find(doc => doc.fileName === filePath)

    if (openedDocument) {
      await openedDocument.save()
      console.log(`自动保存文件: ${filePath}`)
    } else {
      console.log(`文件未在编辑器中打开: ${filePath}`)
    }
  } catch (error) {
    console.error(`自动保存文件失败 ${filePath}:`, error)
    // 不抛出错误，避免影响主要功能
  }
}

/**
 * 批量自动保存多个文件
 * @param filePaths 文件路径数组
 */
export async function autoSaveFiles(filePaths: string[]): Promise<void> {
  const savePromises = filePaths.map(filePath => autoSaveFile(filePath))
  await Promise.all(savePromises)
}
